Robust digital communication system

ABSTRACT

Normally ordered robust VSB data are reordered in accordance with a first interleave to produce reordered robust VSB data. The reordered robust VSB data and ATSC data are reordered in accordance with a second interleave to produce normally ordered robust VSB data and reordered ATSC data. The normally ordered robust VSB data and reordered ATSC data are time multiplexed for transmission to a receiver. The receiver discards the reordered ATSC data or the normally ordered robust VSB data depending upon receiver type or user selection. A robust VSB receiver is able to process the normally ordered robust VSB data upstream of an outer decoder without an interleave thereby avoiding the delay associated with an interleave.

RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.60/198,014, filed Apr. 18, 2000 and U.S. Provisional Application No.60/255,476, filed Dec. 13, 2000. This application is a continuation ofU.S. application Ser. No. 11/076,560 filed Mar. 9, 2005—now issued asU.S. Pat. No. 7,519,088 on Apr. 14, 2009—which is a divisional of U.S.application Ser. No. 09/804,261 filed Mar. 13, 2001—now issued as U.S.Pat. No. 6,996,133 on Feb. 7, 2006.

TECHNICAL FIELD OF THE INVENTION

The present invention relates to the transmission and/or reception ofdigital data.

BACKGROUND OF THE INVENTION

The standard in the United States for the transmission of digitaltelevision signals is known as 8 VSB data (ATSC Digital TelevisionStandard A/53). This 8 VSB data has a constellation consisting of eightpossible symbol levels. In a VSB system, the eight possible symbollevels are all in the same phase. In a QAM system, however, the symbolsare transmitted in phase quadrature relationship.

The standard referred to above specifies the formatting and modulationof digital video and audio data. The transmitted data is in the form ofsymbols with each symbol representing two bits of data that are trellisencoded into three bits of trellis encoded data. Each three bits oftrellis encoded data are mapped into a symbol having a corresponding oneof eight levels. Reed/Solomon encoding and interleaving are alsoprovided to increase the robustness of the transmitted information.

Auxiliary data (data other than digital video or audio data) are alsopermitted to be transmitted in a digital television channel. These dataare formatted and modulated according to the standard in the same manneras video and audio data. Receivers made in accordance with the 8 VSBstandard are able to read packet identifications (PIDs) which allow thereceivers to differentiate between audio, video, and auxiliary data.

However, while the robustness of the transmitted digital televisionsignals is sufficient for digital television reception, this robustnessmay not be sufficient for the transmission of auxiliary data,particularly where the auxiliary data are critical. Accordingly, one ofthe applications of the present invention is the transmission ofauxiliary data in a VSB format with outer encoding for added robustness.The auxiliary data transmitted in accordance with the application of thepresent invention are referred to herein as robust VSB data (RVSB).

SUMMARY OF THE INVENTION

In one aspect of the present invention, a method for transmitting adigital signal comprises the following: providing first and secondstreams of digital data; reordering the digital data of the first streamof digital data in accordance with a first interleave to provide a thirdstream of digital data; and, reordering the digital data of the secondand third streams of digital data in accordance with a second interleavecomprising an inverse of the first interleave to provide a timemultiplexed output comprising the second stream of digital datareordered according to the second interleave and the third stream ofdigital data reordered to reflect the order of the first stream ofdigital data.

In another aspect of the present invention, a transmitter fortransmitting robust VSB data comprises an outer coder and first andsecond interleaves. The outer coder receives input data and codes theinput data as first robust VSB data such that the first robust VSB datais normally ordered. The first interleave reorders the first robust VSBdata to provide reordered first robust VSB data. The second interleavereorders the reordered first robust VSB data to provide second robustVSB data. The second robust VSB data is normally ordered, and the firstand second interleaves are inversely related.

In yet another aspect of the present invention, a system comprises areceiver, an inner decoder, a data discarder, and an outer decoder. Thereceiver receives data. The received data comprises normally orderedfirst data and reordered second data, the normally ordered first dataresults from inner and outer coding of first input data and twointerleaving operations, and the reordered second data results frominner coding of second input data and one interleaving operation. Theinner decoder inner decodes the received data to recover the normallyordered first data and the reordered second data. The data discarder isdownstream of the inner decoder and discards the reordered second data.The outer decoder is downstream of the data discarder and outer decodesthe normally ordered first data.

In still another aspect of the present invention, a method of processingreceived data comprises the following: receiving data, wherein thereceived data comprises normally ordered first data and reordered seconddata, wherein the normally ordered first data results from inner andouter coding of first input data and two interleaving operations,wherein the reordered second data results from inner coding of secondinput data and one interleaving operation; inner decoding the receiveddata to recover the normally ordered first data and the reordered seconddata; and, discarding the recovered normally ordered first data.

In a further aspect of the present invention, a system comprises areceiver, a decoder, and a data discarder. The receiver receives data.The received data comprises normally ordered first data and reorderedsecond data, the normally ordered first data results from twointerleaving operations, and the reordered second data results from oneinterleaving operation. The decoder decodes the received data to recoverthe normally ordered first data and the reordered second data. The datadiscarder is downstream of the decoder and discards the recoveredreordered second data.

In yet a further aspect of the present invention, a method of processingreceived data comprises the following: receiving data, wherein thereceived data comprises normally ordered first data and reordered seconddata, wherein the normally ordered first data results from inner andouter coding of first input data and two interleaving operations,wherein the reordered second data results from inner coding of secondinput data and one interleaving operation; decoding the received data torecover the normally ordered first data and the reordered second data;and, upon a user selection, either reordering the recovered normallyordered first data and reordered second data and subsequently discardingthe reordered normally ordered first data or discarding the recoveredreordered second data and subsequently reordering the recovered normallyordered first data.

In a still further aspect of the present invention, a receiver supplyingmethod comprises the following: supplying first receivers, wherein eachof the first receivers processes received robust N level VSB data anddiscards N level ATSC data; and, supplying second receivers, whereineach of the second receivers processes received N level ATSC data anddiscards robust N level VSB data.

In another aspect of the present invention, an electrical signalcontains first and second data symbols having the same constellation,and the first and second data symbols have different bit rates. Thefirst and second symbols are intermixed in a data frame

In still another aspect of the present invention, an apparatus comprisesa receiver and a data discarder. The receiver receives an electricalsignal containing first and second 8 VSB data. The first and second 8VSB data have different bit rates. The data discarder discards one ofthe first and second 8 VSB data.

In still another aspect of the present invention, a receiver receives anATSC frame containing a plurality of ATSC segments. The ATSC segmentscomprises a non-outer coded ATSC transport header, non-outer coded ATSCReed/Solomon parity data, and outer coded data.

BRIEF DESCRIPTION OF THE DRAWING

These and other features and advantages will become more apparent from adetailed consideration of the invention when taken in conjunction withthe drawing in which:

FIG. 1 shows a robust VSB transmitter for transmitting robust VSB dataand ATSC data in accordance with the present invention;

FIG. 2 shows a standard ATSC receiver for receiving the ATSC datatransmitted by the robust VSB transmitter of FIG. 1;

FIG. 3 shows a robust VSB receiver for receiving the robust VSB datatransmitted by the robust VSB transmitter of FIG. 1;

FIG. 4 shows the ⅔ rate encoder of FIG. 1 in additional detail;

FIG. 5 shows the mapping function performed by the mapper of FIG. 4;

FIG. 6 shows the operation of the ⅔ rate decoders of FIGS. 2 and 3;

FIG. 7 shows another robust VSB transmitter for transmitting robust VSBdata and ATSC data in accordance with the present invention;

FIG. 8 shows a standard ATSC receiver for receiving the ATSC datatransmitted by the robust VSB transmitter of FIG. 7;

FIG. 9 shows a robust VSB receiver for receiving the robust VSB datatransmitted by the robust VSB transmitter of FIG. 7;

FIG. 10 shows a circuit for generating the appropriate control signal onthe discard control line of FIG. 9;

FIG. 11 shows yet another robust VSB transmitter for transmitting robustVSB data and ATSC data in accordance with the present invention;

FIG. 12 shows an example of four data segments containing ½ rate outercoded data that may be transmitted by a robust VSB transmitter accordingto the present invention;

FIG. 13 shows an example of four data segments containing ¼ rate outercoded data that may be transmitted by a robust VSB transmitter accordingto the present invention;

FIG. 14 shows an example of four data segments containing ¾ rate outercoded data that may be transmitted by a robust VSB transmitter accordingto the present invention;

FIG. 15 shows the interleavers (I_(r)) of FIGS. 1, 9, and 11 in moredetail;

FIG. 16 shows the deinterleavers (D_(r)) of FIGS. 3 and 9 in moredetail;

FIG. 17 shows a map definition structure of a first robust VSB datapacket of a frame;

FIG. 18 shows a portion of the frame sync segment of a frame thatcarries a map indicating where in the frame robust VSB data can befound;

FIG. 19 illustrates an enhanced slice predictor according to oneembodiment of the present invention;

FIG. 20 shows the trellis for the inner decoder of FIG. 19;

FIG. 21 shows possible state transitions for the outer decoder of FIG.19; and,

FIG. 22 illustrates an enhanced slice predictor according to anotherembodiment of the present invention.

DETAILED DESCRIPTION RVSB and ATSC Data Transmission and Reception

FIG. 1 shows a robust VSB transmitter 10 that transmits both ATSC dataand robust VSB data in accordance with one embodiment of the presentinvention. FIG. 2 shows a standard ATSC receiver 12 that receives theATSC data transmitted by the robust VSB transmitter 10, and FIG. 3 showsa robust VSB receiver 14 that receives the robust VSB data transmittedby the robust VSB transmitter 10.

The robust VSB transmitter 10 includes a Reed/Solomon encoder 16 thatencodes uncoded auxiliary data bytes by adding Reed/Solomon parity bytesto the uncoded auxiliary data bytes. The uncoded auxiliary data bytesand the Reed/Solomon parity bytes are interleaved by an interleaver 18.Then, the interleaved uncoded auxiliary data bytes and the Reed/Solomonparity bytes are bitwise encoded by an outer coder 20 using either aconvolutional code or other error correcting code. The outer coder 20improves the robustness of the uncoded auxiliary data bytes and theReed/Solomon parity bytes, converting them to robust data bytes(hereinafter referred to as robust VSB data bytes) and Reed/Solomonparity bytes.

The outer coder 20, for example, may be a ½ rate coder which producestwo output bits for every input bit, a ¼ rate coder which produces fouroutput bits for every input bit, or a ¾ rate coder which produces fouroutput bits for every three input bits. Other coders could instead beused.

At the output of the outer coder 20, a three byte transport (tx) headeris added to each group of 184 coded robust VSB data and Reed/Solomonbytes to form robust VSB data packets. A multiplexer 24 multiplexesthese robust VSB data packets with ATSC data packets (typically, videoand audio) each comprising a three byte transport header and 184 bytesof ATSC data. Either input to the multiplexer 24 may be selected on apacket by packet basis and each selected input is supplied to an ATSCtransmitter 26. The selection by the multiplexer 24 of which input topass to the ATSC transmitter 26 is based on a robust VSB map to bedescribed hereinafter.

The ATSC transmitter 26, as is typical, includes a Reed/Solomon encoder28, an interleaver 30, and a ⅔ rate inner encoder 32 all operating inaccordance with the ATSC standard.

A standard ATSC receiver, such as the standard ATSC receiver 12 shown inFIG. 2, receives and processes the ATSC data and discards the robust VSBdata. Accordingly, the standard ATSC receiver 12 includes a ⅔ rate innerdecoder 34, a deinterleaver 36, and a Reed/Solomon decoder 38, alloperating in accordance with the ATSC standard. The standard ATSCreceiver 12, however, is programmed to decode both the ATSC data and therobust VSB data transport headers (which include the packetidentifications or PID's and which have not been coded by the outercoder 20). The standard ATSC receiver 12 reads the PID's of all packetsand, at 40, discards those packets having the PID's of robust VSB data.The standard ATSC receiver 12 also includes a slice predictor 42 (suchas the slice predictor disclosed in U.S. Pat. No. 5,923,711) which isresponsive to the inner decoded data and which provides an output backto a phase tracker and/or equalizer, as is known in the art.

The robust VSB data packets can be received, decoded, and processed by arobust VSB receiver such as the robust VSB receiver 14 shown in FIG. 3.As is known, and as shown in FIG. 4, the ⅔ rate inner encoder 32 of theATSC transmitter 26 includes a precoder 44 and a four state trellisencoder 46. In combination, the precoder 44 and the four state trellisencoder 46 may be viewed as an eight state coder that produces threetrellis encoded output bits (Z0 Z1 Z2) for every two input bits (X1 X2).A mapper 48 maps the three trellis encoded output bits to a symbolhaving one of eight levels as shown in FIG. 5. As is well known fromconvolutional code theory, the operation of the precoder 44 and the fourstate trellis encoder 46 may be viewed as an eight state 4-ary trellis.

Therefore, in the robust VSB receiver 14, a ⅔ rate inner decoder 50 mayoperate on an eight state 4-ary trellis which views the precoder 44 andthe four state trellis encoder 46 of the ⅔ rate inner encoder 32 incombination as shown in FIG. 6 to produce a soft output decision (using,for example, the SSA algorithm as described in “Optimum Soft OutputDetection for Channels with Intersymbol Interference,” Li, Vucetic, andSato, IEEE Transactions on Information Theory, May, 1995). This softdecision making operation is more complicated than the widely usedViterbi algorithm, which produces a hard decision output, but the softdecision making operation more fully takes advantage of the coding gainprovided by the outer coder 20.

The output of the ⅔ rate inner decoder 50 is deinterleaved by adeinterleaver 52. The robust VSB receiver 14 reads the PID's of allpackets at the output of the deinterleaver 52. Based upon these PID's,the robust VSB receiver 14 discards those packets at 54 which have thePID's of ATSC data and also discards the transport headers addedfollowing the outer coder 20 and the parity bytes added by theReed/Solomon encoder 28. Thus, the robust VSB receiver 14, at 54, passesonly the robust VSB data packets containing the robust VSB data coded bythe outer coder 20. The robust VSB data packets are decoded by an outerdecoder 56, deinterleaved by a deinterleaver 58 (which is the inverse ofthe interleaver 18), and Reed/Solomon decoded by a Reed/Solomon decoder60 in order to reconstruct the original uncoded auxiliary data suppliedto the Reed/Solomon encoder 16 of FIG. 1.

The reliable output of the outer decoder 56 (either soft or hard outputmay be used) is interleaved by an interleaver 62 (corresponding to theinterleaver 30) in a feedback path 64 in order to restore the orderingof the outer decoded data to the order of the data in the channel. Thisinterleaved outer decoded data can be used, for example, by a slicepredictor 66 to create reliable feedback to a phase tracker and/orequalizer. However, the overall feedback delay introduced by thedeinterleaver 52 and the interleaver 62 in the robust VSB receiver 14 isgenerally too long to provide useful feedback to the phase trackerand/or equalizer.

The arrangement shown in FIGS. 7, 8, and 9 avoids the feedback delayintroduced by the deinterleaver 52 and the interleaver 62 of the robustVSB receiver 14. FIG. 7 shows a robust VSB transmitter 80 in whichuncoded auxiliary data bytes are encoded by a Reed/Solomon encoder 82which adds Reed/Solomon parity bytes to the uncoded auxiliary databytes. The uncoded auxiliary data bytes and the Reed/Solomon paritybytes are interleaved by an interleaver 84. Then, the interleaveduncoded auxiliary data bytes and Reed/Solomon parity bytes are bitwiseencoded by an outer coder 86 using either a convolutional code or aturbo product code, as discussed above. The bitwise output of the outercoder 86 is small block interleaved by a small block interleaver 88 inorder to reduce the impact of channel burst errors on the outerdecoding. The data provided by the small block interleaver 88 may bereferred to as Rdata(n.o.) which stands for normally ordered robust VSBdata.

One input of a first multiplexer 92 receives ATSC formatted packets eachcomprising (i) a valid three byte transport header with a PID number forrobust VSB data, (ii) 184 placeholder bytes of dummy robust VSB data,and (iii) twenty placeholder bytes for dummy ATSC Reed/Solomon paritydata. The other input of the first multiplexer 92 receives ATSCformatted dummy packets each comprising 207 bytes of dummy ATSC data.These ATSC formatted dummy packets serve as placeholders for the realATSC packets to be added downstream. The inputs of the first multiplexer92 may be selected on a packet by packet basis, and this selection isbased on the robust VSB map to be described later.

The selected output of the first multiplexer 92 is interleaved by aninterleaver 94 according to the ATSC Standard for the convolutional byteinterleave. A data replacer 96 receives both the output of theinterleaver 94 and the output of the small block interleaver 88. Thedata replacer 96 replaces each dummy robust VSB data placeholder bytefrom the interleaver 94 with the next normally ordered robust VSB databyte from the small block interleaver 88.

The output of the data replacer 96 contains normally ordered robust VSBdata with interspersed transport headers, dummy ATSC Reed/Solomon paritybytes, and dummy ATSC data packet bytes. A deinterleaver 98, whichoperates according to the ATSC Standard for byte deinterleaving,deinterleaves the output of the data replacer 96 to thus effectively“repacketize” the data as packets of transport headers, reordered robustVSB data (Rdata(r.o.)), dummy ATSC Reed/Solomon parity bytes, and dummyATSC data. The reordering of the normally reordered robust VSB dataresults from the deinterleaving of the deinterleaver 98 and thereordered data may be referred to as reordered robust VSB data.

The dummy ATSC Reed/Solomon parity bytes (20 per packet) of the robustVSB packets and the dummy ATSC data packets (207 bytes per packet) arediscarded at 100. The remaining robust VSB packets, each including atransport header and reordered robust VSB data, are multiplexed by asecond multiplexer 102 with real ATSC data packets each containing 187bytes of a transport header and ATSC data. Either input to the secondmultiplexer 102 may be selected on a packet by packet basis and issupplied to an ATSC transmitter 104. The selection by the secondmultiplexer 102 of which input to pass to the ATSC transmitter 104 isbased on the robust VSB map to be described hereinafter.

The ATSC transmitter 104 typically includes a Reed/Solomon encoder 106,an interleaver 108, and a twelve way ⅔ rate inner encoder 110 alloperating in accordance with the ATSC standard. The Reed/Solomon encoder106 outputs packets of transport headers, reordered robust VSB data, andATSC Reed/Solomon parity bytes multiplexed with packets of transportheaders, ATSC data, and ATSC Reed/Solomon parity bytes. The ATSCReed/Solomon parity bytes for the robust VSB data are calculated basedon the reordered robust VSB data. Moreover, the interleaver 108 changesthe ordering of the robust VSB data so that the robust VSB data at theoutput of the interleaver 108 is again normally ordered robust VSB data.Also, the interleaver 108 disperses the transport headers, the ATSCReed/Solomon parity bytes, and the ATSC data. This data is ⅔ rate codedby the twelve way ⅔ rate inner encoder 110 and is transmitted. Thetransmitted robust VSB data is in normal order, i.e., the order providedat the output of the small block interleaver 88. This normal orderpermits the robust VSB receiver to avoid the delay caused by thedeinterleaver 52 and the interleaver 62 of the robust VSB receiver 14.

As shown in FIG. 8, a standard ATSC receiver 120 includes a twelve way ⅔inner decoder 122 which decodes the transmitted data to provide anoutput data stream comprising normally ordered robust data withinterspersed transport headers, ATSC data, and ATSC Reed/Solomon paritybytes located according to the ATSC convolutional byte interleaveprovided by the interleaver 108. An ATSC deinterleaver 124 restores thetransport headers, ATSC data, and ATSC Reed/Solomon parity bytes totheir transport “packetized” positions. Also, the ATSC deinterleaver 124converts the normally ordered robust VSB data into reordered robust VSBdata. This reordered form permits an ATSC Reed/Solomon decoder 126 ofthe standard ATSC receiver 120 to correctly test parity for the robustVSB data packets. The standard ATSC receiver 120 can then read therobust VSB data packet transport headers and gracefully discard therobust VSB data packets at 128 based on their PIDs.

As shown in FIG. 9, a robust VSB receiver 130 includes a soft outputtwelve way ⅔ rate inner decoder 132. (A hard output ⅔ decoder wouldresult in a considerable loss of coding gain). The output of the softoutput twelve way ⅔ rate inner decoder 132 comprises normally orderedrobust VSB data, with reordered ATSC data, transport headers, and ATSCReed/Solomon parity symbols dispersed within the robust VSB data atlocations indicated by a discard control line 134 discussed below. Adiscard block 136, under control of the discard control line 134,discards the reordered ATSC data, transport headers, and ATSCReed/Solomon parity symbols.

A small block deinterleaver 138 deinterleaves the robust VSB data. Thesmall block deinterleaver 138 has a relatively low delay time. Thisdeinterleaving disperses possible burst errors in the robust VSB data atthe output of the soft output twelve way ⅔ rate inner decoder 132. Thenormally ordered robust VSB data is bitwise decoded by an outer decoder140 which also packs the robust VSB data into bytes. The map informationtelling the outer decoder 140 what decoding rate to use on what data isprovided to the outer decoder 140 at an R_(MAP) Data input. Neither thedeinterleaver 52 nor the interleaver 62 is needed in the robust VSBreceiver 130 allowing for lower overall feedback delay to the phasetracker and/or equalizer. The outer decoded data can be used, forexample, by an enhanced slice predictor 142 to generate feedback to thephase tracker and/or equalizer. If desired, the feedback may be gated,or the step size of the equalizer gradient algorithm adjustedproportionally to the reliability of the decoded data.

The robust VSB data packet payload decoded by the outer decoder 140 isdeinterleaved by a deinterleaver 144 (which is the inverse of theinterleaver 84) and is Reed/Solomon decoded by a Reed/Solomon decoder146 (corresponding to the Reed/Solomon encoder 82) in order toreconstruct the original uncoded auxiliary data supplied to theReed/Solomon encoder 82 of FIG. 7.

As provided in the ATSC standard, a frame comprises a plurality ofsegments each containing a predetermined number of bytes. The firstsegment of a frame is a frame sync segment, and the remaining segmentsin the frame are data segments. Although robust VSB data can betransmitted in segments or in partial segments, it is convenient totransmit robust VSB data in segment pairs. The robust VSB map discussedabove indicates which segment pairs contain robust VSB data so that thediscard block 136 can correctly discard the reordered ATSC data beforethe reordered ATSC data can get to the outer decoder 140. The transportheaders and the ATSC Reed/Solomon parity data for all segments (robustVSB and ATSC) must also be discarded by the discard block 136.

A conceptually simple circuit to generate the appropriate control signalon the discard control line 134 to control this discarding function isshown in FIG. 10, together with the relevant portion of the robust VSBreceiver 130. The robust VSB receiver 130 uses received map information(the method for transmission and reception of this map information isdescribed below) to instruct a dummy segment generator 150 when toconstruct dummy 207 byte segments. The dummy segment generator 150 alsouses the frame sync signal. For each ATSC dummy segment, the dummysegment generator 150 sets all bytes to FF. For each robust VSB datadummy segment, the dummy segment generator 150 sets the transport headerand ATSC Reed/Solomon parity bytes to FF. The dummy segment generator150 sets the rest of the bytes of each robust VSB data dummy segment to00.

These dummy segments are fed by the dummy segment generator 150 to anATSC convolutional byte interleaver 152 whose output is then used tocontrol the discard block 136 which then responds to the FF and 00 codesto correctly discard the reordered ATSC data, the transport headers, andthe ATSC Reed/Solomon parity data which are interleaved within thereceived data stream. The discard block 136, thus, passes only therobust VSB data.

FIG. 11 shows a multiple outer code robust VSB transmitter 160. Therobust VSB transmitter 160 operates similarly to the robust VSBtransmitter 80 of FIG. 7. The robust VSB transmitter 160 has a firstReed/Solomon encoder 162 which encodes first uncoded auxiliary data byadding Reed/Solomon parity bytes to the first uncoded auxiliary data, asecond Reed/Solomon encoder 164 which encodes second uncoded auxiliarydata by adding Reed/Solomon parity bytes to the second uncoded auxiliarydata, and a third Reed/Solomon encoder 166 which encodes third uncodedauxiliary data bytes by adding Reed/Solomon parity bytes to the thirduncoded auxiliary data. The Reed/Solomon encoded first uncoded auxiliarydata are interleaved by a first interleaver 168, the Reed/Solomonencoded second uncoded auxiliary data are interleaved by a secondinterleaver 170, and the Reed/Solomon encoded third uncoded auxiliarydata are interleaved by a third interleaver 172. Then, the interleavedReed/Solomon encoded first uncoded auxiliary data are bitwise encoded bya first outer coder 174, the interleaved Reed/Solomon encoded seconduncoded auxiliary data are bitwise encoded by a second outer coder 176,and the interleaved Reed/Solomon encoded third uncoded auxiliary dataare bitwise encoded by a third outer coder 178. The bitwise output ofthe first outer coder 174 is interleaved by a first small blockinterleaver 180, the bitwise output of the second outer coder 176 isinterleaved by a second small block interleaver 182, and the bitwiseoutput of the third outer coder 178 is interleaved by a third smallblock interleaver 184.

The first outer coder 174 is a ¼ rate coder, the second outer coder 176is a ½ rate coder, and the third outer coder 178 is a ¾ rate coder,although any other combination of these or other outer coders usingdifferent coding rates could be used. The data outputs of the first,second, and third small block interleavers 180, 182, and 184 areselected by a multiplexer 186 under control of a select input whichdetermines the order in which the differently outer coded data areinserted into the frame to be transmitted. The data at the output of themultiplexer 186 may be referred to as Rdata(n.o.) which, as before,stands for normally ordered robust VSB data.

The top three inputs of a multiplexer 190 receive ATSC format packetseach having of a valid three byte transport header with a PID number forrobust VSB data, 184 placeholder bytes of dummy robust VSB data, andtwenty dummy placeholder bytes for ATSC Reed/Solomon parity data. Therobust VSB data at the topmost input of the multiplexer 190 correspondto ¼ rate coded data from the first outer coder 174, the robust VSB dataat the next input of the multiplexer 190 correspond to ½ rate coded datafrom the second outer coder 176, and the robust VSB data at the nextinput of the multiplexer 190 correspond to ¾ rate coded data from thethird outer coder 178. The data supplied to the bottommost input of themultiplexer 190 comprises ATSC format dummy packets each having 207bytes of dummy ATSC data. These dummy ATSC data packets serve asplaceholders for the real ATSC data packets to be added downstream ofthe multiplexer 190. The inputs to the multiplexer 190 may be selectedon a packet by packet basis in accordance with the input on a selectline. This selection is based on the robust VSB data map to be describedbelow.

The output of the multiplexer 190 is interleaved by an interleaver 192in order to achieve a correct ATSC convolutional interleave. A datareplacer 194 receives both the output of the interleaver 192 and theoutput of the multiplexer 186. The data replacer 194 replaces each dummyrobust VSB data placeholder byte from the multiplexer 190 with the nextcorresponding normally ordered robust VSB data byte from the multiplexer186.

The output of the data replacer 194 contains normally ordered robust VSBdata (which is ¼ rate coded, ½ rate coded, and/or ¾ rate coded, asappropriate) with interspersed transport headers, dummy ATSCReed/Solomon parity bytes, and dummy ATSC data packet bytes. Aconvolutional byte deinterleaver 196 (as described in the ATSC Standard)deinterleaves the output of the data replacer 194 to thus effectively“repacketize” the data as packets of transport headers, reordered robustVSB data (¼, ½, and/or ¾ rate coded), dummy ATSC Reed/Solomon paritybytes, and dummy packets of ATSC data. The reordering of the normallyordered robust VSB data results from the deinterleaving of thedeinterleaver 196.

The dummy ATSC Reed/Solomon parity bytes (20 per packet) and the dummyATSC data packets (207 bytes per packet) are discarded at 198 in amanner similar to that provided by the discard control line 134 and thediscard block 136 of FIG. 9. The remaining robust VSB packets, eachincluding a transport header and reordered robust VSB data, aremultiplexed by a multiplexer 200 with real ATSC data packets eachcontaining 187 bytes of a transport header and ATSC data. Either inputto the multiplexer 200 may be selected on a packet by packet basis andis supplied to an ATSC transmitter 202. The selection by the multiplexer200 of which input to pass to the ATSC transmitter 202 is based on therobust VSB map to be described, hereinafter.

The ATSC transmitter 202 typically includes a Reed/Solomon encoder 204,an interleaver 206, and a twelve way ⅔ rate inner encoder 208 alloperating in accordance with the ATSC standard. The Reed/Solomon encoder204 outputs packets of transport headers, reordered robust VSB data, andATSC Reed/Solomon parity bytes multiplexed with packets of transportheaders, ATSC data, and ATSC Reed/Solomon parity bytes. The ATSCReed/Solomon parity bytes for the robust VSB data are calculated basedon the reordered robust VSB data. Moreover, the interleaver 206 changesthe ordering of the robust VSB data so that the robust VSB data at theoutput of the interleaver 206 are again normally ordered robust VSBdata. Also, the interleaver 206 disperses the transport header bytes,the ATSC Reed/Solomon parity bytes, and the ATSC data. These data are ⅔rate coded by the twelve way ⅔ rate inner encoder 208 and aretransmitted. The transmitted robust VSB data are in normal order, i.e.,the order provided at the output of the multiplexer 186. This normaldata order permits the robust VSB receiver to avoid the delay caused bythe deinterleaver 52 and the interleaver 62.

As discussed above, an ATSC frame comprises a frame sync segment and aplurality of data segments and, for convenience, robust VSB data arepacked into groups of four segments. More specifically, FIG. 12 shows anexample of four data segments that may be used in a frame to transmitrobust VSB data that is ½ rate coded, FIG. 13 shows an example of fourdata segments that may be used in a frame to transmit robust VSB datathat is ¼ rate coded, and FIG. 14 shows an example of four data segmentsthat may be used in a frame to transmit robust VSB data that is ¾ ratecoded. These examples represent the frame prior to the interleaver 108and assume that each group of four robust VSB data segments contains anintegral number of robust Reed/Solomon encoded blocks each of which is184 bytes long, of which twenty bytes are parity bytes.

For the case of a ½ rate outer code, FIG. 12 shows that the outer coderoutputs two bits for each input bit. A robust VSB data packet is packedas one RVSB Reed-Solomon block to a pair of data segments (one bit persymbol) so that, for a ½ rate outer code, four segments contain tworobust Reed/Solomon encoded blocks. As shown in FIG. 13, for the case ofa ¼ rate outer code, the outer coder outputs four bits for each inputbit. Robust VSB data is packed as one RVSB Reed-Solomon block for everyfour data segments (½ bit per symbol) so that, for a ¼ rate outer code,four segments contain one robust Reed/Solomon encoded block. As shown inFIG. 14, for the case of a ¾ rate outer code, the outer coder outputsfour bits for each three input bits. In this case, transmitted symboland byte boundaries do not always match. However, three complete RVSBReed-Solomon blocks will pack exactly into four data segments (1.5 bitsper symbol) so that, for a ¾ rate outer code, four segments containthree robust Reed/Solomon encoded blocks.

Accordingly, FIGS. 12, 13, and 14 can be represented by the followingtable:

S X Y 1/2 1 2 1/4 1 4 3/4 3 4where X represents the number of complete robust Reed/Solomon encodedblocks and Y represents the number of frame segments required to containthe corresponding number X of robust Reed/Solomon encoded blocks.

However, it should be understood that other coding rates can be used inconjunction with the present invention and, therefore, the above tablewill change depending upon the particular coding rates that are used.

The interleavers 18, 84, 168, 170, and 172 are shown in more detail inFIG. 15, and the deinterleavers 58 and 144 are shown in more detail inFIG. 16, assuming that a robust Reed/Solomon encoded block is chosen tobe 184 bytes long. The interleavers 18, 84, 168, 170, and 172 are B=46,M=4, N=184 convolutional interleavers that byte wise interleave therobust VSB data. This interleaving scheme is the same as the ATSCinterleaver scheme described in the ATSC Digital Television StandardA/53 and the Guide to the Use of the ATSC digital Television StandardA/54, except that the B parameter for the robust interleaver is 46instead of 52 and the parameter N is 184 instead of 208. Thisinterleaver is needed so that a robust VSB receiver can cope with longbursts of noise on the channel even though the ATSC deinterleaver(D_(a)) is bypassed as shown in FIG. 9.

As shown in FIG. 16, the deinterleavers 58 and 144 are B=46, M=4, N=184convolutional deinterleavers that byte wise deinterleave the robust VSBdata. This deinterleaving scheme is also the same as the ATSCdeinterleaver scheme described in the ATSC Digital Television StandardA/53 and the Guide to the Use of the ATSC digital Television StandardA/54, except that the B parameter for the robust deinterleaver is 46instead of 52 and the parameter N is 184 instead of 208.

Because a robust VSB Reed/Solomon block comprises 184 bytes, and becausean integral number of robust VSB Reed/Solomon blocks are in a dataframe, the number of robust VSB data bytes plus robust VSB Reed/Solomonparity bytes in a data frame is always evenly divisible by 46.Therefore, the frame sync segment can be used as a synchronizer for thedeinterleavers 58 and 144 (D_(r)) in the receiver, regardless of thevalue of G (to be described below). At frame sync, the deinterleavercommutators are forced to the top positions. The deinterleavers 58 and144 are byte wise deinterleavers.

Data Mapping

As discussed above, each data frame may contain a mix of robust VSB datasegments and ATSC (non-robustly coded) data segments. Moreover, therobust VSB data may contain data coded with a mix of coding rates. Therobust VSB receiver 14 or 130 must have a robust VSB map that indicateswhich segments are robust VSB coded and which outer code is used for therobust VSB coding so that the robust VSB receiver 14 or 130 cancorrectly process the robust VSB data and discard the ATSC data. Therobust VSB transmitters 10, 80, and 160 also use the robust VSB map tocontrol their corresponding multiplexing and discard functions. Thisrobust VSB map is transmitted by the robust VSB transmitter 10, 80, or160 to the robust VSB receiver 14 or 130 along with all the other datain a manner described below.

The presence, amount, and location of the robust VSB data in a dataframe encoded with a particular outer code are indicated by one or morenumbers S_(C) that appear as two level data in the frame sync segment ofthe data frame. As is known, the frame sync segment is the first segmentin a frame. So, for the outer codes described above (¼ rate, ½ rate, and¾ rate), the frame sync segment should preferably contain [S_(1/4)S_(1/2) S_(3/4)]. Each S_(C) (such as S_(1/4) or S_(1/2) or S_(3/4)) isencoded as eighteen symbols (bits) of two level data. For all threecodes, a total of 3×18=54 symbols are needed as a definition of therobust VSB map. These symbols are inserted into the reserved area nearthe end of each frame sync segment (just before the twelve precodingbits). For each group of eighteen bits (b₁₈ . . . b₁), the last six bits(b₆ . . . b₁) represent the number G of groups of eight segments (8segments=2, 4 or 6 robust VSB data packets depending on the outer code)mapped as robust VSB data in the current frame. The twelve precedingbits are for comb filter compensation (see the Guide to the Use of theATSC digital Television Standard A/54). Accordingly, as shown in FIG.18, bits b₆ . . . b₁ represent the number G, bits b₁₈ . . . b₁₃ are thecomplement of bits b₆ . . . b₁, and bits b₁₂ . . . b₇ can be alternating+1 and −1 (or any other pattern).

Let it be assumed that S=S_(1/4)+S_(1/2)+S_(3/4). Because 312/8=39, 0-39groups of eight segments can be mapped as robust VSB data or 8 VSB data(ATSC data). Therefore, each S_(C) may have a value of 0 . . . 39, aslong as their sum S is ≦39.

The robust VSB data segments are preferably distributed as uniformly aspossible over the data frame. For example, if S=1, then the followingeight segments are mapped as robust VSB data segments and all othersegments are mapped as ATSC data segments: 1, 40, 79, 118, 157, 196,235, and 274. If S=2, then the following sixteen segments are mapped asrobust VSB data segments and all other segments are mapped as ATSC datasegments: 1, 20, 39, 58, 77, 96, 115, 134, 153, 172, 191, 210, 229, 248,267, and 286. These examples continue until S=39, where the whole dataframe is mapped as robust VSB data segments. For some values of S, thespacing between robust VSB data segment pairs is not perfectly uniform.However, for any value of S, the spacing is fixed in advanced and,therefore, known to all receivers.

If a frame contains robust VSB data provided by three outer codersoperating at ¼ rate, ½ rate, and ¾ rate, then the data from these threeouter coders may be divided in a frame such that, as to RVSB segments,the first 8×S_(1/4) segments contain the ¼ rate outer coded data, thenext 8×S_(1/2) segments contain the ½ rate outer coded data, and thelast 8×S_(3/4) segments contain the ¾ rate outer coded data. However,other robust VSB data segment organizations are possible for these threeouter coders or for any number of other types of outer coders.

Because this robust VSB map is contained in the frame sync segment, asdiscussed above, the robust VSB map does not enjoy the same level ofcoding gain as the robust VSB data. However, the robust VSB map maystill be reliably acquired by a robust VSB receiver by correlating therobust VSB map over some number of frames. Therefore, the robust VSB mapshould not change too often (for example, not more often than every ˜60frames).

The above mapping method allows a receiver to reliably and simplyacquire the robust VSB map by correlation. Once a receiver has acquiredthe map, it is desirable for the receiver to instantly and reliablytrack changes in the map. In order to instantly and reliably trackchanges in the map, the definition in the robust VSB map for each outercode, excluding the comb compensation bits, is duplicated in the firstrobust VSB Reed/Solomon encoded block of the frame. In addition, thereis data indicating (i) when in the future the map will change and (ii)the future new map definition. The first robust VSB data packet of aframe for an outer coder, therefore, has the structure shown in FIG. 17,where the robust VSB map definition data is given by the following:eight bits designating the current map (only six of these bits areused); eight bits designating the number of frames until the map changes(1-125; if 0, then no change coming); and, eight bits designating thenext map (again, only six of these bits are used). The remaining portionof the first robust VSB data packet is data. The first RVSB segment in aframe for a respective outer coder has the arrangement shown FIG. 17.

In this way, a receiver can track map changes using reliable robust VSBdata. Even if a burst error destroys a number of the frames, thereceiver can keep its own frame countdown using the number of framesread from a previously received frame. If the receiver finds at any timethat the definition for an outer code previously acquired by the framesync correlation does not match the definition for that outer code inthe first robust VSB data segment, the receiver should restart its mapacquisition process.

RVSB Enhanced Slice Prediction and Equalizer Feedback

ATSC 8 VSB receivers make important use of adaptive equalization andphase tracking as explained in the ATSC Digital Television Standard A/53published by the Advanced Television Systems Committee, in the Guide tothe Use of the ATSC Digital Television Standard A/54, also published bythe Advanced Television Systems Committee. RVSB as described above hasfeatures that allow for improvements in adaptive equalization and phasetracking.

One such improvement results from feeding back delayed reliableestimates of the input symbol level to the adaptive equalizer and/orphase tracker based on a sequence estimation from an enhanced ViterbiAlgorithm. (See “The Viterbi Algorithm,” G. D. Forney, Jr., Proc: IEEE,vol 61, pp: 268-278, March, 1973). This type of feedback avoids the needfor “re-encoding,” which has a state initialization problem.

U.S. Pat. No. 5,923,711, entitled “Slice Predictor for a SignalReceiver,” discloses an ATSC 8 VSB receiver which utilizes a slicepredictor in order to provide more reliable feedback to the phasetracker or adaptive equalizer. This feedback can be made even morereliable by a enhanced slice predictor system 300 shown in FIG. 19. Theenhanced slice predictor system 300 has an inner decoder 302 and anouter decoder 304 which operate similarly to the inner decoders andouter decoders described above.

The slice prediction output from the inner decoder 302 works in a mannersimilar to that described in the aforementioned U.S. Pat. No. 5,923,711.As explained above, the inner decoder 302 is based on an 8 state 4-arytrellis that includes a precoder. Based on the best path metric at thecurrent time t, the slice predictor of the inner decoder 302 decides amost likely state at time t. Then, based on the next possible pair ofstates, four possible predicted input levels (out of eight) for the nextsymbol at time t+1 are selected. For example, as shown by the innerdecoder trellis in FIG. 20, if the most likely state at time t is stateone, the next state is ^(˜)[1 5 2 6]. Therefore, the next input level attime t+1 may be −7, +1, −3, or +5. These next input levels correspond todecoded bit pairs 00, 10, 01, and 11, respectively.

Similarly, the outer decoder 304 also finds the best path metric for thecurrent time t for the respective trellis. A portion of this trellis isshown in FIG. 21 for an exemplary outer decoder and may be appliedgenerally to all three outer codes. As shown in FIG. 21, two possibleouter decoder input bit pairs are selected for the time t+1 based on thenext possible pair of states. By way of example, the two possible outerdecoder input bit pairs may be 11 or 01. The bit pair chosen by theouter decoder 304 is sent to a prediction enhancer 306 which selectsamplitude levels +5 or −3 from the set of four levels previouslyselected by the slice predictor of the inner decoder 302 as the enhancedslice prediction for time t+1. Because the slice prediction of the innerdecoder 302 is near zero delay, but because the outer decoder 304 cannotoperate on the same symbol until after the inner decoder 302 hasprovided a decoded soft output, a delay module 308 provides a delay timeslightly greater than the traceback delay time of the inner decoder 302.The slice prediction provided by the prediction enhancer 306 may besupplied as feedback to an equalizer of phase tracker 310.

With some additional delay time, the outer decoder 304 can make a finalhard decision and select a single most likely input bit pair for timet+1. For example, if 11 is found to be the most likely input bit pair tothe outer decoder 304 as determined by its Viterbi Algorithm, thisinformation is sent by the outer decoder 304 to the prediction enhancer306 which then chooses +5 from the set of four levels and correspondingbit pairs already selected by the slice predictor of the inner decoder302. The outer code can be a convolutional code or other type of errorcorrection code. The predictor enhancer 306 is disabled during theperiods of time when ATSC data is being received.

A feedback enhanced maximum likelihood sequence estimator (MLSE) slicepredictor system 320 uses the Viterbi Algorithm and is shown in FIG. 22along with other relevant parts of an RVSB receiver. The feedbackenhanced MLSE slice predictor system 320 has an inner decoder 322 and anouter decoder 324 which operate similarly to the inner decoder 302 andthe outer decoder 304 described above. However, instead of using theslice prediction output of the inner decoder 302, an enhanced MLSEmodule 326 is configured to execute the usual Viterbi Algorithm on thereceived signal by operating the eight state ⅔ rate code trellis (thesame trellis used by the inner decoder 322, including the precoder).

The enhanced MLSE module 326 selects as its next input either (i) thenoisy eight level received signal as delayed by a delay module 328 ifthe next input is a non-RVSB symbol or (ii) the bit pair decision outputof the outer decoder 324 (hard or soft) if the next input is a RVSBsymbol. The enhanced MLSE module 326 makes this selection according tothe symbol by symbol information in the RVSB map.

The enhanced MLSE module 326 outputs one of eight possible symbols asits slice prediction, and this slice prediction (symbol decision) isprovided by the enhanced MLSE module 326 as feedback to an equalizer orphase tracker 330.

The enhanced MLSE module 326 should follow a more correct path throughthe eight state trellis than does the inner decoder 322 because theenhanced MLSE module 326 gets more reliable input from the outer decoder324 when an RVSB symbol is available.

The output of the enhanced MLSE module 326 may be a hard slice decisionor a soft level. Also, any symbol reliability indication from the innerdecoder 322 or the outer decoder 324 may be used to change the step sizeof the equalizer LMS algorithm. (See the Guide to the Use of the ATSCDigital Television Standard A/54.)

An optional predetermined coded training sequence may be included in aspecified portion of the first RVSB segment of a data field. Thissequence is known in advance by both the transmitter and receiver.During the time the decoded training sequence is output from the outerdecoder 324, the input to the enhanced MLSE module 326 is switched to astored version of the decoded training sequence.

Certain modifications of the present invention have been discussedabove. Other modifications will occur to those practicing in the art ofthe present invention. For example, although the standard ATSC receiver12 and the robust VSB receiver 14 are shown above as separate receivers,the functions of the standard ATSC receiver 12 and the robust VSBreceiver 14 can be combined in two data paths of a single receivercapable of decoding both types of data (ATSC data and robust VSB data).

Accordingly, the description of the present invention is to be construedas illustrative only and is for the purpose of teaching those skilled inthe art the best mode of carrying out the invention. The details may bevaried substantially without departing from the spirit of the invention,and the exclusive use of all modifications which are within the scope ofthe appended claims is reserved.

1. A method of processing broadcast data, the method comprising:receiving a digital television (DTV) signal including first dataincluding coding information of the first data multiplexed with seconddata; decoding the first and second data in the DTV signal for firsterror correction in order to correct errors in the first and second datathat occurred during reception of the DTV signal; discarding the seconddata decoded for first error correction and the coding information ofthe first data; and, decoding the first data for second error correctionin order to additionally correct errors in the first data that occurredduring the reception of the DTV signal.
 2. The method of claim 1,wherein the first data are normally ordered and the second data arereordered.
 3. The method of claim 2, wherein the normally ordered firstdata results from two interleaving operations of first input data andthe reordered second data results from one interleaving operation ofsecond input data.
 4. The method of claim 2, wherein the normallyordered first data results from inner and outer coding of first inputdata and the reordered second data results from inner coding of secondinput data.
 5. The method of claim 2, wherein the normally ordered firstdata result from inner and outer coding of first input data and twointerleaving operations, and the reordered second data results frominner coding of second input data and one interleaving operation.
 6. Themethod of claim 1, wherein the first and second data in the received DTVsignal are defined by the same n level constellation.
 7. The method ofclaim 1, wherein the first and second data in the received DTV signalcorrespond to different numbers of coded bits.
 8. The method of claim 1,wherein the DTV signal results from Reed-Solomon (RS) encoding of firstinput data, deinterleaving the RS-encoded first input data, multiplexingthe deinterleaved first input data with second input data, RS encodingthe multiplexed first and second input data; interleaving the RS-encodedfirst and second input data, and performing trellis encoding on theinterleaved first and second input data.
 9. A method as claimed in claim1, wherein the decoded second data discarded in said discarding stepincludes payload data.
 10. A method as claimed in claim 9, wherein thepayload data is ATSC data.
 11. A method as claimed in claim 1, whereinthe coding information of the first data discarded in the discardingstep is parity data.